home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
019a
/
tde10.zip
/
READ.ME
next >
Wrap
Text File
|
1991-06-05
|
7KB
|
153 lines
You should be able to use tde without reading this file. It works like most
other editors - nothing special about editing a file. Press F1 while in tde
and it will give you a help screen with key definitions. This file contains a
little history about tde and some additional info that you probably don't
need or care to know.
Author:
program name: tde, the Thomson-Davis Editor
author: Frank Davis
fmd@tifton.bitnet
home address: 102 Starr Street
Tifton, Georgia 31794
USA
work address: U.S Dept. of Agriculture
P.O. Box 946
Tifton, Georgia 31793
USA
based on an editor by: Douglas Thomson
c/- Computing
M.U.C.G.
Switchback Road
Churchill
Victoria 3842
AUSTRALIA
doug@giaea.oz
Background:
At work, I have written several editors that may only be used for a certain
type of file (almost an expert system). I have always wanted to write a
general purpose public domain text editor. It seems none of the existing
public domain or shareware editors have all of the features I like. My wish
list of features are:
Blocks:
Line and column blocks.
Move, delete, copy, kopy, overlay, and fill block options.
Block actions within or between files.
Files:
Multiple files limited only by memory.
Windows:
Multiple windows limited only by memory.
Split screen horizontally (don't use vertical screens very often).
Changes to text in one window are updated in all windows of same file.
Interactively resize windows.
Two windows of same size so two files can be compared easily.
Search/Replace:
Ignore or Match case of pattern.
Prompt or no prompt replace.
Boyer-Moore pattern matching algorithm.
Other:
Split/join line.
Lines as long a 255 characters.
Paren balance.
Support for functions keys.
Mode/information line.
Well, I found a public domain editor that had most of the features on my wish
list. The orginal code was extremely well documented. That editor was
dte 5.1, written by Douglas Thomson, Gippsland, Victoria, Australia. So
instead of writing an editor from scratch, I based my editor around Doug's
well designed and documented program. My editor was written using dte 5.1
as an outline. Doug, thanks a lot for releasing the source code for your
editor.
dte 5.1 is pretty much machine independent. It runs on PC's, HP 3000's, and
generic Unix system V release 2 systems. It was designed to work well over
slow communication lines, eg 1200 baud. Screen updates are kept to a minimum
which saves time and money when using dial-up phone lines. dte 5.1 uses the
WordStar/Turbo x style key definitions. If you need an editor for use over
slow communication terminals, check out Doug's editor.
My dream editor was to be written specifically for PC's. At work, we have
an IBM mainframe. The only reason I use the mainframe is for e-mail and for
backup of my PC files (I have exagerated a little). I use my PC editors to
compose my mail then upload to the mainframe to send it. So, I really don't
need or desire a machine independent editor. Although I have IBM OS/2 1.0 on
my machine at work, I don't use OS/2 enough to justify writing a bound version.
(To make a program run under both IBM/MS DOS and OS/2, you have to bind it.)
Another of my design considerations was the machine-compiler-memory model
factor. At work I use a 16 Mhz 386 machine with Microsoft C 6.0a and at
home I use a 8 Mhz 286 machine with Microsoft QuickC 2.5 w/ QuickAssembler.
I wanted the editor to work fast on the slow machine; so, I wrote some of the
often used string functions in assembly. To edit files larger than 64k, you
just about have to use the huge memory model. However, QuickC cannot debug
programs compiled with the huge option. Additionaly, programs compiled using
the huge model run a lot slower because of all the compiler generated pointer
arithmetic. I wrote some functions in assembly that allow my editor to be
compiled with either the compact or large memory model. Now, I can run and
debug the program at work or at home. All of those assembly routines that
support huge pointer arithmetic are original. If you're into assembly, check
out the tdeasm.c module for some good assembly tips on manually manipulating
far pointers.
I also wanted the ability to edit the files produced by our water quality model.
Null characters, or '\0', are allowed as part of the normal text in those files.
Since DOS uses ^Z to mark the end of files, I decided to use ^Z to mark the end
of strings. Any character, except ^Z, is allowed in the text file. Conse-
quently, the standard C string library functions will not work when doing
operations on text in the file. The assembly language routines in tdeasm.c
take care of the ^Z terminated strings.
I modified almost all of the algorithms in the original dte 5.1 editor and added
several more. The block and find/replace algorithms are completely rewritten.
Block operations use either line or column blocks instead of stream blocks.
The "brute force" text find algorithm was replaced by the Boyer-Moore pattern
matching algorithm. The text display algorithms are completely rewritten.
The window operations were enhanced and streamlined. Support for lines as long
as 255 characters was added. Horizontal scrolling is allowed.
Bug reports:
There are no bugs in tde, only features that may inconvenience you. ;*)
Please send inconvenience reports via e-mail, if at all possible, to
fmd@tifton.bitnet. I'll try to respond as quickly as possible to reports
received via e-mail.
Things to add in the next version:
1. Speed up block operations. Some block operations can be rather slow.
2. Speed up writing file back to disk.
3. Although the speed of the find algorithm is acceptable, some of the routines
may be rewritten in assembly to make the find function lightning fast.
4. May add support routines to allow any character, including ^Z, in the file.
5. Limited support for an undo function.
6. Support for ^Up and ^Down for scrolling up and down instead of ^W and ^X.
About the author of tde, Frank Davis:
Frank "yank" Davis, who has an impressive collection of inflatable bed bunnies,
received a BS in Information and Computer Science from Georgia Tech in 1983. He
can be found drinking massive quantities of beer in his underwear (boxer shorts)
on his couch while watching college football and Atlanta Braves baseball on his
19 inch color TV. Hobbies include: picking his nose, trying out pick-up lines
on babes like "Hey baby, I've got more meat in my pants than most grocery stores
have in their meat department", and not breaking for Dawgs.